package com.mmall.util;

import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Properties;

/**
 * Created by Administrator on 2017/6/7 0007.
 */
public class PropertiesUtil {

    private static Logger logger = LoggerFactory.getLogger(PropertiesUtil.class);

    //这个是引入的一个java.util工具类
    private static Properties props;

    /*
    程序执行顺序
    静态代码块--普通代码块--构造代码块
     */
    static {
        String fileName = "mmall.properties";
        props = new Properties();
        try {
            InputStream inputStream = PropertiesUtil.class.getClassLoader().getResourceAsStream(fileName);
            props.load(new InputStreamReader(inputStream, "utf-8") {
            });
        } catch (IOException e) {
            logger.error("配置文件读取异常", e);
        }
    }

    /**
     * 通过mmall.properties中的key值获取value
     * 就算是key和value的值前后有空格也不影响判断
     * @param key
     * @return
     */
    public static String getProperty(String key) {
        //调用的是java.util工具类下的方法
        String value = props.getProperty(key.trim());
        if (StringUtils.isBlank(value)) {
            return null;
        }
        return value.trim();
    }

    //重载：根据业务需求场景选择不同的方法
    public static String getProperty(String key,String defaultValue) {
        //调用的是java.util工具类下的方法
        String value = props.getProperty(key.trim());
        if (StringUtils.isBlank(value)) {
            value=defaultValue;
        }
        return value.trim();
    }


}



















